package main

import (
	"github.com/gin-contrib/sessions"
	"github.com/gin-contrib/sessions/cookie"
	"github.com/gin-gonic/gin"
	"server/config"
	"server/model"
	"server/route"
)

func main() {
	model.Init()
	config.Init()

	//model.Insert()
	//model.InsertAll()
	//model.Get(1)
	//model.GetAll(2)
	//model.Update(200, 1)
	//model.Delete(5)

	//https://gin-gonic.com/zh-cn/docs/examples/graceful-restart-or-stop/
	gin.SetMode(gin.ReleaseMode)
	router := gin.Default()

	// 创建基于cookie的存储引擎，secret11111 参数是用于加密的密钥
	store := cookie.NewStore([]byte("secret11111"))
	// 设置session中间件，参数mysession，指的是session的名字，也是cookie的名字
	// store是前面创建的存储引擎，我们可以替换成其他存储引擎
	router.Use(sessions.Sessions("mysession", store))

	router = route.Init(router)

	router.Run(":8080") // 监听并在 0.0.0.0:8080 上启动服务
}
